1. Field of the Invention
The present invention relates to an electronic apparatus having an angular velocity detection function, an angular velocity acquisition method for the electronic apparatus, and a storage medium having stored thereon an angular velocity acquisition program that is applied in the angular velocity acquisition method.
2. Description of the Related Art
In recent years, various electronic apparatuses such as cellular phones, smartphones (high- functionality cellular phone), navigation terminals, smart devices that are worn on human bodies and the like are widely available.
In general, such electronic apparatuses are equipped with various types of motion sensors including an angular velocity sensor (or gyro sensor) for detecting change in the angular velocity of an object.
This angular velocity sensor has been widely used in the fields of attitude control for aircrafts and robots, image stabilization for imaging apparatuses, game controllers, etc. In recent years, it is mounted in smartphones and smart devices which are now significantly prevalent, and used to acquire information regarding a user's exercise status, movement trajectory, and the like.
As such, the angular velocity sensor is a useful sensor that is capable of directly detecting change in the angular velocity of an electronic apparatus having the sensor or the angular velocity of the body motion of a user wearing or carrying the electronic apparatus. However, it is known that its power consumption is generally large as compared to those of other motion sensors such as an acceleration sensor and a geomagnetic sensor (or magnetic sensor). Therefore, when an angular velocity sensor is mounted in a battery-operated apparatus such as a portable electronic apparatus or a wearable apparatus, its driving time may become short.
Accordingly, a method has been proposed in which angular velocity is calculated and estimated based on the output of a geomagnetic sensor or the outputs of a geomagnetic sensor and an acceleration sensor, whereby a function equivalent to that of an angular velocity sensor is achieved, as described in International Publication No. 2007-099599.
This method for calculating angular velocity is a method using what is called a magnetic gyro sensor. In this method, in short, angular velocity is calculated based on a temporal change in a geomagnetism vector detected by a geomagnetic sensor mounted in an electronic apparatus.
In general, the power consumption of a geomagnetic sensor is small as compared to that of an angular velocity sensor. Therefore, the above-described method using a magnetic gyro sensor has an effect contributing to the improvement of the driving time of an electronic apparatus by reducing its power consumption.
However, geomagnetic sensors are easily affected by magnetic fields around electronic apparatuses having these sensors or magnetism from components arranged around them in the electronic apparatuses. Accordingly, there is a problem in that, when a geomagnetic field that is supposed to be detected by a geomagnetic sensor is affected by these disturbance noises, accurate angular velocities are difficult to be calculated.